
const innerAudioContext = wx.createInnerAudioContext({
  useWebAudioImplement: false // 是否使用 WebAudio 作为底层音频驱动，默认关闭。对于短音频、播放频繁的音频建议开启此选项，开启后将获得更优的性能表现。由于开启此选项后也会带来一定的内存增长，因此对于长音频建议关闭此选项
})
innerAudioContext.src = 'https://m801.music.126.net/20240419170226/b9df9783c34ea30e3528f3221da93f9e/jdyyaac/obj/w5rDlsOJwrLDjj7CmsOj/35121148289/65e7/42a0/fc56/582ca469488f4518b1b059c972a6b6d3.m4a'
console.log(2222,innerAudioContext);


function getRandomColor() {
  const rgb = []
  for (let i = 0; i < 3; ++i) {
    let color = Math.floor(Math.random() * 256).toString(16)
    color = color.length === 1 ? '0' + color : color
    rgb.push(color)
  }
  return '#' + rgb.join('')
}

// pages/media/media.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    isLoading:false,
    bannerList:null,
    indicatorDots: true,
    vertical: false,
    autoplay: true,
    interval: 2000,
    duration: 500,

    // 音频
    poster: 'http://y.gtimg.cn/music/photo_new/T002R300x300M000003rsKF44GyaSk.jpg?max_age=2592000',
    name: '如果可以',
    author: '杜宣达',
    src: 'https://m801.music.126.net/20240419170226/b9df9783c34ea30e3528f3221da93f9e/jdyyaac/obj/w5rDlsOJwrLDjj7CmsOj/35121148289/65e7/42a0/fc56/582ca469488f4518b1b059c972a6b6d3.m4a',
    audioCtx:null,
    isPlaying:true,

    // 视频
    src: 'http://wxsnsdy.tc.qq.com/105/20210/snsdyvideodownload?filekey=30280201010421301f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031e8d7f02030f42400204045a320a0201000400',
    danmuList:[{
      text: '第 1s 出现的弹幕',
      color: '#ff0000',
      time: 1
    }, {
      text: '第 3s 出现的弹幕',
      color: '#ff00ff',
      time: 3
    }],
    msg:"", // 发送消息
    videoCtx:null,

    isPlayingVideo:false,


  },
  playHandler(){ // 每次播放视频 当前函数触发2次
    console.log("视频正在播放...",wx.getStorageSync('isWifi'));

    // 第一次进来 false => 不做任何操作
    // 第一次进来 true => 不做执行后续操作
    if(this.data.isPlayingVideo)  return false;

    this.setData({
      isPlayingVideo:true,
    })
   
    let isWifi = wx.getStorageSync('isWifi');
    if(!isWifi){  // !非wifi
      this.videoCtx.pause();
      wx.showModal({
        title: '警告',
        content: '您正在使用数据流量,是否继续?',
        complete: (res) => {
          if (res.cancel) {
              this.videoCtx.pause();

              this.setData({
                isPlayingVideo:false,
              })
          }
          if (res.confirm) {
            wx.setStorageSync('isWifi',true);
            this.videoCtx.play();
          }
        }
      })
    }

 
  
  },
  bindSendDanmu(){
     this.videoCtx.sendDanmu({
       text:this.data.msg,
       color:getRandomColor(),
       time: 2,
     })
  },
  togglePlay(){
    if(this.data.isPlaying){ // 如果正在播放
      innerAudioContext.pause();
    }else{ // 正在暂停
      innerAudioContext.play();
    }

    this.setData({
      isPlaying:!this.data.isPlaying
    })

  },
  audioPlay: function () {
    this.audioCtx.play() // 播放
  },
  audioPause: function () {
    this.audioCtx.pause() // 暂停
  },
  audio14: function () {
    this.audioCtx.seek(14) // 设置进度
  },
  audioStart: function () {
    this.audioCtx.seek(0) //进度归0
  },
  activeendHandler(){
      this.setData({
        isLoading:false,
      })
  },
  getBannerList(){
     wx.showLoading({
       title: '加载中...',
     })
     wx.request({
       method:"get",
       url: 'http://47.109.189.52:5566/api/banner/list',
       data:{},
       header:{},
       success:(responseOption)=>{
          // console.log(111,responseOption);
          if(responseOption.statusCode == 200){
             let result = responseOption.data;
              if(result.code == 200){
                  this.setData({
                    bannerList:result.data,
                  })
              }
          }
       },
       fail:(err)=>{
          // console.log(222,err);
       },
       complete(){
            wx.hideLoading();
       }
     })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    console.log("页面加载完成");
    this.getBannerList();
    innerAudioContext.play(); 


    // 每次进入页面判断网络类型
    wx.getNetworkType({
      success(result){
          console.log("网速信息",result.networkType);
          wx.setStorageSync('isWifi', result.networkType == "wifi")
      }
    })

    wx.onNetworkStatusChange(function(result){
      console.log("网速信息改变",result.networkType);
      wx.setStorageSync('isWifi', result.networkType == "wifi")
    })

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    // 对应id获取音频组件
    this.audioCtx = wx.createAudioContext('myAudio');
    console.log(111, this.audioCtx);

    // 对应id获取视频组件
    this.videoCtx = wx.createVideoContext('myVideo')
    console.log(222,this.videoCtx);
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})